package com.iwhalecloud.bss.kite.cucc.service.attr.linkhandler;

import com.iwhalecloud.bss.kite.common.constant.KeyConsts;
import com.iwhalecloud.bss.kite.cucc.service.attr.handler.ValueAddedServicesAttrHandler;
import com.iwhalecloud.bss.kite.listener.handler.attr.annotation.AttrHandler;
import com.iwhalecloud.bss.kite.listener.handler.attr.impl.AbstractAttrLinkageHandler;
import com.iwhalecloud.bss.kite.manager.inst.KiteAttr;
import com.iwhalecloud.bss.kite.manager.inst.KiteInst;
import com.iwhalecloud.bss.kite.service.attr.AttrData;
import com.iwhalecloud.bss.kite.service.scene.attr.OperateInstAttrService;
import org.apache.commons.lang3.StringUtils;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;

/**
 * 110015096(物网协同（物网关系绑定、网络信息查询、网络LBS服务）), 110015097(PSM节电（NB设备节电开通和配置、Cat.1设备PSM节电开通和配置）),
 * 110015098(AI能力集成（AI原子能力）), 110015099(视频平台集成（视频产品管理、视频设备管理、流媒体服务）)
 */
@Service
@AttrHandler(ValueAddedServicesAttrHandler.class)
public class ValueAddedServicesAttrLinkHandler extends AbstractAttrLinkageHandler<AttrData> {

  @Autowired OperateInstAttrService operateInstAttrService;

  @Override
  public void handle(KiteAttr attr, KiteInst inst, AttrData data) {
    KiteAttr attr1 = inst.getAttr("210008086"); // 物网协同-物网关系绑定结算价格（万元）
    KiteAttr attr2 = inst.getAttr("210008087"); // 物网协同-物网关系绑定销售价格（万元）
    KiteAttr attr3 = inst.getAttr("210008088"); // 物网协同-网络信息查询结算价格（万元）
    KiteAttr attr4 = inst.getAttr("210008089"); // 物网协同-网络信息查询销售价格（万元）
    KiteAttr attr5 = inst.getAttr("210008090"); // 物网协同-网络LBS服务结算价格（万元）
    KiteAttr attr6 = inst.getAttr("210008091"); // 物网协同-网络LBS服务销售价格（万元）
    KiteAttr attr7 = inst.getAttr("210008092"); // PSM节电-NB设备节电开通和配置结算价格（万元）
    KiteAttr attr8 = inst.getAttr("210008093"); // PSM节电-NB设备节电开通和配置销售价格（万元）
    KiteAttr attr9 = inst.getAttr("210008095"); // PSM节电-Cat.1设备PSM节电开通和配置结算价格（万元）
    KiteAttr attr10 = inst.getAttr("210008096"); // PSM节电-Cat.1设备PSM节电开通和配置销售价格（万元）
    KiteAttr attr11 = inst.getAttr("210008097"); // AI能力集成-AI原子能力结算价格（万元）
    KiteAttr attr12 = inst.getAttr("210008098"); // AI能力集成-AI原子能力销售价格（万元）
    KiteAttr attr13 = inst.getAttr("210008099"); // 视频平台集成-视频产品管理结算价格（万元）
    KiteAttr attr14 = inst.getAttr("210008100"); // 视频平台集成-视频产品管理销售价格（万元）
    KiteAttr attr15 = inst.getAttr("210008101"); // 视频平台集成-视频设备管理结算价格（万元）
    KiteAttr attr16 = inst.getAttr("210008102"); // 视频平台集成-视频设备管理销售价格（万元）
    KiteAttr attr17 = inst.getAttr("210008103"); // 视频平台集成-流媒体服务结算价格（万元）
    KiteAttr attr18 = inst.getAttr("210008104"); // 视频平台集成-流媒体服务销售价格（万元）
    KiteAttr attr19 = inst.getAttr("210008105"); // 物网协同结算价折扣率（%）
    KiteAttr attr20 = inst.getAttr("210008106"); // PSM节电结算价折扣率（%）

    if (StringUtils.isNotEmpty(attr.getValue()) && attr.getValue().contains("110015096")) { // 物网协同
      attr1.setShowType("D");
      attr1.setIsNull(KeyConsts.IFTRUE_F);
      attr2.setShowType("D");
      attr2.setIsNull(KeyConsts.IFTRUE_F);
      attr3.setShowType("D");
      attr3.setIsNull(KeyConsts.IFTRUE_F);
      attr4.setShowType("D");
      attr4.setIsNull(KeyConsts.IFTRUE_F);
      attr5.setShowType("D");
      attr5.setIsNull(KeyConsts.IFTRUE_F);
      attr6.setShowType("D");
      attr6.setIsNull(KeyConsts.IFTRUE_F);
      attr19.setShowType("D");
    } else {
      attr1.setShowType("E");
      attr1.setIsNull(KeyConsts.IFTRUE_T);
      attr2.setShowType("E");
      attr2.setIsNull(KeyConsts.IFTRUE_T);
      attr3.setShowType("E");
      attr3.setIsNull(KeyConsts.IFTRUE_T);
      attr4.setShowType("E");
      attr4.setIsNull(KeyConsts.IFTRUE_T);
      attr5.setShowType("E");
      attr5.setIsNull(KeyConsts.IFTRUE_T);
      attr6.setShowType("E");
      attr6.setIsNull(KeyConsts.IFTRUE_T);
      attr19.setShowType("E");
    }
    if (StringUtils.isNotEmpty(attr.getValue()) && attr.getValue().contains("110015097")) { // PSM节电
      attr7.setShowType("D");
      attr7.setIsNull(KeyConsts.IFTRUE_F);
      attr8.setShowType("D");
      attr8.setIsNull(KeyConsts.IFTRUE_F);
      attr9.setShowType("D");
      attr9.setIsNull(KeyConsts.IFTRUE_F);
      attr10.setShowType("D");
      attr10.setIsNull(KeyConsts.IFTRUE_F);
      attr20.setShowType("D");
    } else {
      attr7.setShowType("E");
      attr7.setIsNull(KeyConsts.IFTRUE_T);
      attr8.setShowType("E");
      attr8.setIsNull(KeyConsts.IFTRUE_T);
      attr9.setShowType("E");
      attr9.setIsNull(KeyConsts.IFTRUE_T);
      attr10.setShowType("E");
      attr10.setIsNull(KeyConsts.IFTRUE_T);
      attr20.setShowType("E");
    }

    if (StringUtils.isNotEmpty(attr.getValue()) && attr.getValue().contains("110015098")) { // AI能力集成
      attr11.setShowType("D");
      attr11.setIsNull(KeyConsts.IFTRUE_F);
      attr12.setShowType("D");
      attr12.setIsNull(KeyConsts.IFTRUE_F);
    } else {
      attr11.setShowType("E");
      attr11.setIsNull(KeyConsts.IFTRUE_T);
      attr12.setShowType("E");
      attr12.setIsNull(KeyConsts.IFTRUE_T);
    }

    if (StringUtils.isNotEmpty(attr.getValue()) && attr.getValue().contains("110015099")) { // 视频平台集成
      attr13.setShowType("D");
      attr13.setIsNull(KeyConsts.IFTRUE_F);
      attr14.setShowType("D");
      attr14.setIsNull(KeyConsts.IFTRUE_F);
      attr15.setShowType("D");
      attr15.setIsNull(KeyConsts.IFTRUE_F);
      attr16.setShowType("D");
      attr16.setIsNull(KeyConsts.IFTRUE_F);
      attr17.setShowType("D");
      attr17.setIsNull(KeyConsts.IFTRUE_F);
      attr18.setShowType("D");
      attr18.setIsNull(KeyConsts.IFTRUE_F);
    } else {
      attr13.setShowType("E");
      attr13.setIsNull(KeyConsts.IFTRUE_T);
      attr14.setShowType("E");
      attr14.setIsNull(KeyConsts.IFTRUE_T);
      attr15.setShowType("E");
      attr15.setIsNull(KeyConsts.IFTRUE_T);
      attr16.setShowType("E");
      attr16.setIsNull(KeyConsts.IFTRUE_T);
      attr17.setShowType("E");
      attr17.setIsNull(KeyConsts.IFTRUE_T);
      attr18.setShowType("E");
      attr18.setIsNull(KeyConsts.IFTRUE_T);
    }
  }

  @Override
  public void handleStyle(KiteAttr attr, KiteInst inst, AttrData data) {}
}
